package com.senthink.gl.business.userlog;

import com.senthink.gl.business.fault.DeviceTypeEnum;
import com.senthink.gl.business.userlog.enums.*;

import java.lang.annotation.*;

/**
 *  操作日志自定义注解
 * @author yuanpeng@senthink.com
 * @data 2017/12/14
 */

@Target({ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
public @interface SystemUserLog {

    /**
     * 操作类型
     * @return
     */
    LogOperateEnum operate() default LogOperateEnum.DEFAULT;

    /**
     * 操作描述
     * @return
     */
    LogDetailEnum detail() default LogDetailEnum.DEFAULT;

    /**
     *  模型类类型
     * @return
     */
    LogTypeEnum logType() default LogTypeEnum.DEFAULT;

    /**
     * 设备类型
     * @return
     */
    DeviceTypeEnum deviceType() default DeviceTypeEnum.DEFAULT;

    /**
     * 控制类型
     * @return
     */
    LogControlTypeEnum controlType() default LogControlTypeEnum.DEFAULT;

    /**
     * 策略类型
     * @return
     */
    LogPoliciesEnum policiesType() default LogPoliciesEnum.DEFAULT;

    /**
     * 策略参数类型
     * @return
     */
    LogPoliciesParamEnum policiesParamType() default LogPoliciesParamEnum.DEFAULT;

}
